Tree Shaking

Loại bỏ dead code — chỉ những hàm bạn import mới xuất hiện trong bundle cuối cùng.

💡 Chạy npm run build rồi mở dist/stats-treeshaking.html để trực quan hóa bundle và xác nhận dead code đã bị loại bỏ.

Demo Trực Tiếp — Hàm Được Dùng

Chỉ addmultiply được import. 13 hàm còn lại trong math.js bị bundler loại bỏ.

So Sánh Kích Thước Bundle

✓ Có Tree Shaking

Chỉ gồm hàm được import

~16 KB

Chạy npm run build để xem kích thước chính xác

✕ Không có Tree Shaking

Gồm toàn bộ 15 hàm

~85+ KB

CommonJS / import có side effect

Hàm trong math.js

15 hàm được định nghĩa, chỉ 2 được import — phần còn lại bị tree-shake loại bỏ.

add() multiply() subtract() divide() power() sqrt() abs() max() min() clamp() round() floor() ceil() mod() factorial()

Tại Sao Hoạt Động Được